package com.atguigu.guli.ai.service;

import com.atguigu.guli.ai.pojo.Chat;
import com.atguigu.guli.ai.pojo.Message;
import com.atguigu.guli.ai.vo.ChatVo;
import com.atguigu.guli.ai.vo.MessageVo;
import com.atguigu.guli.ai.vo.QueryVo;
import com.atguigu.system.domain.ChatKnowledge;
import org.springframework.web.multipart.MultipartFile;
import reactor.core.publisher.Flux;

import java.util.List;

public interface AiService {
    void upload(ChatKnowledge chatKnowledge, MultipartFile file);

    String creareChat(ChatVo chatVo);

    List<Chat> getChat(ChatVo chatVo);

    void updateChat(ChatVo chatVo);

    Flux<String> chatStream(QueryVo queryVo);

    void saveMsg(MessageVo messageVo);

    List<Message> listMsg(Long chatId);
}
